export 'location_activity_metrics.dart';

// import 'package:flutter/material.dart';
// class metric {
// 	LocationActivityMetrics locationActivityMetrics;
// 	CellularConditionMetrics cellularConditionMetrics;
// 	MetaData metaData;
// 	GpuMetrics gpuMetrics;
// 	MemoryMetrics memoryMetrics;
// 	List<SignpostMetrics> signpostMetrics;
// 	DisplayMetrics displayMetrics;
// 	CpuMetrics cpuMetrics;
// 	NetworkTransferMetrics networkTransferMetrics;
// 	DiskIOMetrics diskIOMetrics;
// 	ApplicationLaunchMetrics applicationLaunchMetrics;
// 	ApplicationTimeMetrics applicationTimeMetrics;
// 	String timeStampEnd;
// 	ApplicationResponsivenessMetrics applicationResponsivenessMetrics;
// 	String appVersion;
// 	String timeStampBegin;
// }

// class LocationActivityMetrics {
// 	String cumulativeBestAccuracyForNavigationTime;
// 	String cumulativeBestAccuracyTime;
// 	String cumulativeHundredMetersAccuracyTime;
// 	String cumulativeNearestTenMetersAccuracyTime;
// 	String cumulativeKilometerAccuracyTime;
// 	String cumulativeThreeKilometersAccuracyTime;

// 	LocationActivityMetrics({this.cumulativeBestAccuracyForNavigationTime, this.cumulativeBestAccuracyTime, this.cumulativeHundredMetersAccuracyTime, this.cumulativeNearestTenMetersAccuracyTime, this.cumulativeKilometerAccuracyTime, this.cumulativeThreeKilometersAccuracyTime});

// 	LocationActivityMetrics.fromJson(Map<String, dynamic> json) {
// 		cumulativeBestAccuracyForNavigationTime = json['cumulativeBestAccuracyForNavigationTime'];
// 		cumulativeBestAccuracyTime = json['cumulativeBestAccuracyTime'];
// 		cumulativeHundredMetersAccuracyTime = json['cumulativeHundredMetersAccuracyTime'];
// 		cumulativeNearestTenMetersAccuracyTime = json['cumulativeNearestTenMetersAccuracyTime'];
// 		cumulativeKilometerAccuracyTime = json['cumulativeKilometerAccuracyTime'];
// 		cumulativeThreeKilometersAccuracyTime = json['cumulativeThreeKilometersAccuracyTime'];
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		data['cumulativeBestAccuracyForNavigationTime'] = this.cumulativeBestAccuracyForNavigationTime;
// 		data['cumulativeBestAccuracyTime'] = this.cumulativeBestAccuracyTime;
// 		data['cumulativeHundredMetersAccuracyTime'] = this.cumulativeHundredMetersAccuracyTime;
// 		data['cumulativeNearestTenMetersAccuracyTime'] = this.cumulativeNearestTenMetersAccuracyTime;
// 		data['cumulativeKilometerAccuracyTime'] = this.cumulativeKilometerAccuracyTime;
// 		data['cumulativeThreeKilometersAccuracyTime'] = this.cumulativeThreeKilometersAccuracyTime;
// 		return data;
// 	}
// }

// class CellularConditionMetrics {
// 	CellConditionTime cellConditionTime;

// 	CellularConditionMetrics({this.cellConditionTime});

// 	CellularConditionMetrics.fromJson(Map<String, dynamic> json) {
// 		cellConditionTime = json['cellConditionTime'] != null ? new CellConditionTime.fromJson(json['cellConditionTime']) : null;
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		if (this.cellConditionTime != null) {
//       data['cellConditionTime'] = this.cellConditionTime.toJson();
//     }
// 		return data;
// 	}
// }

// class CellConditionTime {
// 	int histogramNumBuckets;
// 	HistogramValue histogramValue;

// 	CellConditionTime({this.histogramNumBuckets, this.histogramValue});

// 	CellConditionTime.fromJson(Map<String, dynamic> json) {
// 		histogramNumBuckets = json['histogramNumBuckets'];
// 		histogramValue = json['histogramValue'] != null ? new HistogramValue.fromJson(json['histogramValue']) : null;
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		data['histogramNumBuckets'] = this.histogramNumBuckets;
// 		if (this.histogramValue != null) {
//       data['histogramValue'] = this.histogramValue.toJson();
//     }
// 		return data;
// 	}
// }

// class HistogramValue {
// 	0 00;
// 	0 01;
// 	0 02;

// 	HistogramValue({this.00, this.01, this.02});

// 	HistogramValue.fromJson(Map<String, dynamic> json) {
// 		00 = json['0'] != null ? new 0.fromJson(json['0']) : null;
// 		01 = json['1'] != null ? new 0.fromJson(json['1']) : null;
// 		02 = json['2'] != null ? new 0.fromJson(json['2']) : null;
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		if (this.00 != null) {
//       data['0'] = this.00.toJson();
//     }
// 		if (this.01 != null) {
//       data['1'] = this.01.toJson();
//     }
// 		if (this.02 != null) {
//       data['2'] = this.02.toJson();
//     }
// 		return data;
// 	}
// }

// class 0 {
// 	int bucketCount;
// 	String bucketStart;
// 	String bucketEnd;

// 	0({this.bucketCount, this.bucketStart, this.bucketEnd});

// 	0.fromJson(Map<String, dynamic> json) {
// 		bucketCount = json['bucketCount'];
// 		bucketStart = json['bucketStart'];
// 		bucketEnd = json['bucketEnd'];
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		data['bucketCount'] = this.bucketCount;
// 		data['bucketStart'] = this.bucketStart;
// 		data['bucketEnd'] = this.bucketEnd;
// 		return data;
// 	}
// }

// class MetaData {
// 	String appBuildVersion;
// 	String osVersion;
// 	String regionFormat;
// 	String deviceType;

// 	MetaData({this.appBuildVersion, this.osVersion, this.regionFormat, this.deviceType});

// 	MetaData.fromJson(Map<String, dynamic> json) {
// 		appBuildVersion = json['appBuildVersion'];
// 		osVersion = json['osVersion'];
// 		regionFormat = json['regionFormat'];
// 		deviceType = json['deviceType'];
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		data['appBuildVersion'] = this.appBuildVersion;
// 		data['osVersion'] = this.osVersion;
// 		data['regionFormat'] = this.regionFormat;
// 		data['deviceType'] = this.deviceType;
// 		return data;
// 	}
// }

// class GpuMetrics {
// 	String cumulativeGPUTime;

// 	GpuMetrics({this.cumulativeGPUTime});

// 	GpuMetrics.fromJson(Map<String, dynamic> json) {
// 		cumulativeGPUTime = json['cumulativeGPUTime'];
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		data['cumulativeGPUTime'] = this.cumulativeGPUTime;
// 		return data;
// 	}
// }

// class MemoryMetrics {
// 	String peakMemoryUsage;
// 	AverageSuspendedMemory averageSuspendedMemory;

// 	MemoryMetrics({this.peakMemoryUsage, this.averageSuspendedMemory});

// 	MemoryMetrics.fromJson(Map<String, dynamic> json) {
// 		peakMemoryUsage = json['peakMemoryUsage'];
// 		averageSuspendedMemory = json['averageSuspendedMemory'] != null ? new AverageSuspendedMemory.fromJson(json['averageSuspendedMemory']) : null;
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		data['peakMemoryUsage'] = this.peakMemoryUsage;
// 		if (this.averageSuspendedMemory != null) {
//       data['averageSuspendedMemory'] = this.averageSuspendedMemory.toJson();
//     }
// 		return data;
// 	}
// }

// class AverageSuspendedMemory {
// 	String averageValue;
// 	int standardDeviation;
// 	int sampleCount;

// 	AverageSuspendedMemory({this.averageValue, this.standardDeviation, this.sampleCount});

// 	AverageSuspendedMemory.fromJson(Map<String, dynamic> json) {
// 		averageValue = json['averageValue'];
// 		standardDeviation = json['standardDeviation'];
// 		sampleCount = json['sampleCount'];
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		data['averageValue'] = this.averageValue;
// 		data['standardDeviation'] = this.standardDeviation;
// 		data['sampleCount'] = this.sampleCount;
// 		return data;
// 	}
// }

// class SignpostMetrics {
// 	SignpostIntervalData signpostIntervalData;
// 	String signpostCategory;
// 	String signpostName;
// 	int totalSignpostCount;

// 	SignpostMetrics({this.signpostIntervalData, this.signpostCategory, this.signpostName, this.totalSignpostCount});

// 	SignpostMetrics.fromJson(Map<String, dynamic> json) {
// 		signpostIntervalData = json['signpostIntervalData'] != null ? new SignpostIntervalData.fromJson(json['signpostIntervalData']) : null;
// 		signpostCategory = json['signpostCategory'];
// 		signpostName = json['signpostName'];
// 		totalSignpostCount = json['totalSignpostCount'];
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		if (this.signpostIntervalData != null) {
//       data['signpostIntervalData'] = this.signpostIntervalData.toJson();
//     }
// 		data['signpostCategory'] = this.signpostCategory;
// 		data['signpostName'] = this.signpostName;
// 		data['totalSignpostCount'] = this.totalSignpostCount;
// 		return data;
// 	}
// }

// class SignpostIntervalData {
// 	CellConditionTime histogrammedSignpostDurations;
// 	String signpostCumulativeCPUTime;
// 	String signpostAverageMemory;
// 	String signpostCumulativeLogicalWrites;

// 	SignpostIntervalData({this.histogrammedSignpostDurations, this.signpostCumulativeCPUTime, this.signpostAverageMemory, this.signpostCumulativeLogicalWrites});

// 	SignpostIntervalData.fromJson(Map<String, dynamic> json) {
// 		histogrammedSignpostDurations = json['histogrammedSignpostDurations'] != null ? new CellConditionTime.fromJson(json['histogrammedSignpostDurations']) : null;
// 		signpostCumulativeCPUTime = json['signpostCumulativeCPUTime'];
// 		signpostAverageMemory = json['signpostAverageMemory'];
// 		signpostCumulativeLogicalWrites = json['signpostCumulativeLogicalWrites'];
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		if (this.histogrammedSignpostDurations != null) {
//       data['histogrammedSignpostDurations'] = this.histogrammedSignpostDurations.toJson();
//     }
// 		data['signpostCumulativeCPUTime'] = this.signpostCumulativeCPUTime;
// 		data['signpostAverageMemory'] = this.signpostAverageMemory;
// 		data['signpostCumulativeLogicalWrites'] = this.signpostCumulativeLogicalWrites;
// 		return data;
// 	}
// }

// class DisplayMetrics {
// 	AverageSuspendedMemory averagePixelLuminance;

// 	DisplayMetrics({this.averagePixelLuminance});

// 	DisplayMetrics.fromJson(Map<String, dynamic> json) {
// 		averagePixelLuminance = json['averagePixelLuminance'] != null ? new AverageSuspendedMemory.fromJson(json['averagePixelLuminance']) : null;
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		if (this.averagePixelLuminance != null) {
//       data['averagePixelLuminance'] = this.averagePixelLuminance.toJson();
//     }
// 		return data;
// 	}
// }

// class CpuMetrics {
// 	String cumulativeCPUTime;

// 	CpuMetrics({this.cumulativeCPUTime});

// 	CpuMetrics.fromJson(Map<String, dynamic> json) {
// 		cumulativeCPUTime = json['cumulativeCPUTime'];
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		data['cumulativeCPUTime'] = this.cumulativeCPUTime;
// 		return data;
// 	}
// }

// class NetworkTransferMetrics {
// 	String cumulativeCellularDownload;
// 	String cumulativeWifiDownload;
// 	String cumulativeCellularUpload;
// 	String cumulativeWifiUpload;

// 	NetworkTransferMetrics({this.cumulativeCellularDownload, this.cumulativeWifiDownload, this.cumulativeCellularUpload, this.cumulativeWifiUpload});

// 	NetworkTransferMetrics.fromJson(Map<String, dynamic> json) {
// 		cumulativeCellularDownload = json['cumulativeCellularDownload'];
// 		cumulativeWifiDownload = json['cumulativeWifiDownload'];
// 		cumulativeCellularUpload = json['cumulativeCellularUpload'];
// 		cumulativeWifiUpload = json['cumulativeWifiUpload'];
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		data['cumulativeCellularDownload'] = this.cumulativeCellularDownload;
// 		data['cumulativeWifiDownload'] = this.cumulativeWifiDownload;
// 		data['cumulativeCellularUpload'] = this.cumulativeCellularUpload;
// 		data['cumulativeWifiUpload'] = this.cumulativeWifiUpload;
// 		return data;
// 	}
// }

// class DiskIOMetrics {
// 	String cumulativeLogicalWrites;

// 	DiskIOMetrics({this.cumulativeLogicalWrites});

// 	DiskIOMetrics.fromJson(Map<String, dynamic> json) {
// 		cumulativeLogicalWrites = json['cumulativeLogicalWrites'];
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		data['cumulativeLogicalWrites'] = this.cumulativeLogicalWrites;
// 		return data;
// 	}
// }

// class ApplicationLaunchMetrics {
// 	CellConditionTime histogrammedTimeToFirstDrawKey;
// 	CellConditionTime histogrammedResumeTime;

// 	ApplicationLaunchMetrics({this.histogrammedTimeToFirstDrawKey, this.histogrammedResumeTime});

// 	ApplicationLaunchMetrics.fromJson(Map<String, dynamic> json) {
// 		histogrammedTimeToFirstDrawKey = json['histogrammedTimeToFirstDrawKey'] != null ? new CellConditionTime.fromJson(json['histogrammedTimeToFirstDrawKey']) : null;
// 		histogrammedResumeTime = json['histogrammedResumeTime'] != null ? new CellConditionTime.fromJson(json['histogrammedResumeTime']) : null;
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		if (this.histogrammedTimeToFirstDrawKey != null) {
//       data['histogrammedTimeToFirstDrawKey'] = this.histogrammedTimeToFirstDrawKey.toJson();
//     }
// 		if (this.histogrammedResumeTime != null) {
//       data['histogrammedResumeTime'] = this.histogrammedResumeTime.toJson();
//     }
// 		return data;
// 	}
//

// class ApplicationTimeMetrics {
// 	String cumulativeForegroundTime;
// 	String cumulativeBackgroundTime;
// 	String cumulativeBackgroundAudioTime;
// 	String cumulativeBackgroundLocationTime;

// 	ApplicationTimeMetrics({this.cumulativeForegroundTime, this.cumulativeBackgroundTime, this.cumulativeBackgroundAudioTime, this.cumulativeBackgroundLocationTime});

// 	ApplicationTimeMetrics.fromJson(Map<String, dynamic> json) {
// 		cumulativeForegroundTime = json['cumulativeForegroundTime'];
// 		cumulativeBackgroundTime = json['cumulativeBackgroundTime'];
// 		cumulativeBackgroundAudioTime = json['cumulativeBackgroundAudioTime'];
// 		cumulativeBackgroundLocationTime = json['cumulativeBackgroundLocationTime'];
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		data['cumulativeForegroundTime'] = this.cumulativeForegroundTime;
// 		data['cumulativeBackgroundTime'] = this.cumulativeBackgroundTime;
// 		data['cumulativeBackgroundAudioTime'] = this.cumulativeBackgroundAudioTime;
// 		data['cumulativeBackgroundLocationTime'] = this.cumulativeBackgroundLocationTime;
// 		return data;
// 	}
// }

// class ApplicationResponsivenessMetrics {
// 	CellConditionTime histogrammedAppHangTime;

// 	ApplicationResponsivenessMetrics({this.histogrammedAppHangTime});

// 	ApplicationResponsivenessMetrics.fromJson(Map<String, dynamic> json) {
// 		histogrammedAppHangTime = json['histogrammedAppHangTime'] != null ? new CellConditionTime.fromJson(json['histogrammedAppHangTime']) : null;
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		if (this.histogrammedAppHangTime != null) {
//       data['histogrammedAppHangTime'] = this.histogrammedAppHangTime.toJson();
//     }
// 		return data;
// 	}
// }

// class HistogramValue {
// 	0 00;
// 	0 01;
// 	0 02;

// 	HistogramValue({this.00, this.01, this.02});

// 	HistogramValue.fromJson(Map<String, dynamic> json) {
// 		00 = json['0'] != null ? new 0.fromJson(json['0']) : null;
// 		01 = json['1'] != null ? new 0.fromJson(json['1']) : null;
// 		02 = json['2'] != null ? new 0.fromJson(json['2']) : null;
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		if (this.00 != null) {
//       data['0'] = this.00.toJson();
//     }
// 		if (this.01 != null) {
//       data['1'] = this.01.toJson();
//     }
// 		if (this.02 != null) {
//       data['2'] = this.02.toJson();
//     }
// 		return data;
// 	}
// }

// class SignpostIntervalData {
// 	CellConditionTime histogrammedSignpostDurations;
// 	String signpostCumulativeCPUTime;
// 	String signpostAverageMemory;
// 	String signpostCumulativeLogicalWrites;

// 	SignpostIntervalData({this.histogrammedSignpostDurations, this.signpostCumulativeCPUTime, this.signpostAverageMemory, this.signpostCumulativeLogicalWrites});

// 	SignpostIntervalData.fromJson(Map<String, dynamic> json) {
// 		histogrammedSignpostDurations = json['histogrammedSignpostDurations'] != null ? new CellConditionTime.fromJson(json['histogrammedSignpostDurations']) : null;
// 		signpostCumulativeCPUTime = json['signpostCumulativeCPUTime'];
// 		signpostAverageMemory = json['signpostAverageMemory'];
// 		signpostCumulativeLogicalWrites = json['signpostCumulativeLogicalWrites'];
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		if (this.histogrammedSignpostDurations != null) {
//       data['histogrammedSignpostDurations'] = this.histogrammedSignpostDurations.toJson();
//     }
// 		data['signpostCumulativeCPUTime'] = this.signpostCumulativeCPUTime;
// 		data['signpostAverageMemory'] = this.signpostAverageMemory;
// 		data['signpostCumulativeLogicalWrites'] = this.signpostCumulativeLogicalWrites;
// 		return data;
// 	}
// }

// class DisplayMetrics {
// 	AverageSuspendedMemory averagePixelLuminance;

// 	DisplayMetrics({this.averagePixelLuminance});

// 	DisplayMetrics.fromJson(Map<String, dynamic> json) {
// 		averagePixelLuminance = json['averagePixelLuminance'] != null ? new AverageSuspendedMemory.fromJson(json['averagePixelLuminance']) : null;
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		if (this.averagePixelLuminance != null) {
//       data['averagePixelLuminance'] = this.averagePixelLuminance.toJson();
//     }
// 		return data;
// 	}
// }

// class ApplicationLaunchMetrics {
// 	CellConditionTime histogrammedTimeToFirstDrawKey;
// 	CellConditionTime histogrammedResumeTime;

// 	ApplicationLaunchMetrics({this.histogrammedTimeToFirstDrawKey, this.histogrammedResumeTime});

// 	ApplicationLaunchMetrics.fromJson(Map<String, dynamic> json) {
// 		histogrammedTimeToFirstDrawKey = json['histogrammedTimeToFirstDrawKey'] != null ? new CellConditionTime.fromJson(json['histogrammedTimeToFirstDrawKey']) : null;
// 		histogrammedResumeTime = json['histogrammedResumeTime'] != null ? new CellConditionTime.fromJson(json['histogrammedResumeTime']) : null;
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		if (this.histogrammedTimeToFirstDrawKey != null) {
//       data['histogrammedTimeToFirstDrawKey'] = this.histogrammedTimeToFirstDrawKey.toJson();
//     }
// 		if (this.histogrammedResumeTime != null) {
//       data['histogrammedResumeTime'] = this.histogrammedResumeTime.toJson();
//     }
// 		return data;
// 	}
// }

// class ApplicationResponsivenessMetrics {
// 	CellConditionTime histogrammedAppHangTime;

// 	ApplicationResponsivenessMetrics({this.histogrammedAppHangTime});

// 	ApplicationResponsivenessMetrics.fromJson(Map<String, dynamic> json) {
// 		histogrammedAppHangTime = json['histogrammedAppHangTime'] != null ? new CellConditionTime.fromJson(json['histogrammedAppHangTime']) : null;
// 	}

// 	Map<String, dynamic> toJson() {
// 		final Map<String, dynamic> data = new Map<String, dynamic>();
// 		if (this.histogrammedAppHangTime != null) {
//       data['histogrammedAppHangTime'] = this.histogrammedAppHangTime.toJson();
//     }
// 		return data;
// 	}
// }
